Object Projectile Collision Functions


Listed below are the Built-in Functions that can be used during the Projectile-instigated "Collision Phase" of an Object. They are assigned to an Object Type by entering their ID in that Type's entry in the Object Def File.

Some of these Functions can be used in combination with any Movement or Drawing Function, some only some, and some are limited to only one combination. This is determined by how the Functions affect the Object, and what types of "Extra Variables" each one requires.

Scripted Projectile Collision Functions may be used instead of the Built-in Functions, or in addition to them. If both Built-in and Scripted Projectile Collision Functions are used, the Built-in Function is processed first.

Similarly to Scripted Player/Object "Collision Functions", Scripted "Projectile Collision Functions" must be applied to the Objects that the Projectile must test for collisions with, not the Projectile itself.

Scripted Projectile Collision Functions are called every time a Projectile moves, regardless of whether any collision has actually happened, because these Functions perform the actual collision test as well as determine what happens next if a collision has occured. For this reason, for an accurate collision test, the Function must contain a Script Command that either tests for collision between any of the selectable "Collision Box" types on a Projectile and a Game Object, or manually tests the distance between a Projectile and a Game Object.

For example, the _If(Object_Collide_Projectile) Script Command could be used to test for Projectile "Attack" collision with an Object's "Hurt" area, to "damage" the Object by using the appropriate Script Commands within that "If" Block. The same Function could also use the same Command to test for Projectile "Hurt" collision with an Object's "Attack" area to "damage" the Projectile by using the appropriate Script Commands within that "if" block.

If a collision is found, it is recommended that the "_StopCurrentFunc" Command be used to prevent the Function from testing for other types of collision that could, for example, cause "damage" to both the Projectile and the Object when that is not the desired effect.

Index: 0 - _OPCol_None

Descriptions:
  0 - _OPCol_None